package com.uzai.console.service.pdd;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.pdd.pddorder.*;
import com.uzai.console.vo.pdd.pddorder.PddOrderInfoVo;
import com.uzai.console.vo.pdd.pddorder.PddOrderReportVo;

/***
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface PddOrderService {

    /**
     * 查询拼多多订单列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderQuery
     * @return null
     */
    Page<PddOrderInfoVo> findPddOrderList(PddOrderQuery pddOrderQuery);

    /**
     * 查询拼多多订单详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    PddOrderInfoVo findPddOrderInfo(PddOrderIdDto pddOrderIdDto);

    /**
     * 查询拼多多订单统计信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderQuery
     * @return null
     */
    PddOrderReportVo findPddOrderRepot(PddOrderQuery pddOrderQuery);

    /**
     * 拼多多订单删除-假删除（修改是否删除状态）
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderDelDto
     * @return null
     */
    Boolean delPddOrder(PddOrderDelDto pddOrderDelDto);

    /**
     * 订单确认收货
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    Boolean confirmReceive(PddOrderIdDto pddOrderIdDto);

    /**
     * 订单手动维权
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    Boolean confirmRefund(PddOrderIdDto pddOrderIdDto);

    /**
     * 订单冻结
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    Boolean confirmFrozen(PddOrderIdDto pddOrderIdDto);

    /**
     * 订单解冻
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    Boolean confirmThaw(PddOrderIdDto pddOrderIdDto);

    /**
     * 订单解绑用户
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderUnbindUserDto
     * @return null
     */
    Boolean unbindUser(PddOrderUnbindUserDto pddOrderUnbindUserDto);

    /**
     * 订单绑定用户
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderBindUserDto
     * @return null
     */
    Boolean bindUser(PddOrderBindUserDto pddOrderBindUserDto);

    /**
     * 修改解冻时间
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderThawTimeDto
     * @return null
     */
    Boolean updateThawTime(PddOrderThawTimeDto pddOrderThawTimeDto);

    /**
     * 手动下载拼多多订单
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderDownLoadDto
     * @return null
     */
    void downloadOrder(PddOrderDownLoadDto pddOrderDownLoadDto);

    /**
     * 刷新拼多多订单
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    void refreshOrder(PddOrderIdDto pddOrderIdDto);

    /**
     * 批量刷新拼多多订单
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderChildOrderNoDto
     * @return null
     */
    void batchRefreshOrder(PddOrderChildOrderNoDto pddOrderChildOrderNoDto);

    /**
     * 查询所有未绑定用户订单列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderUnbindDtoQuery
     * @return null
     */
    Page<PddOrderInfoVo> findUnbindUserList(PddOrderUnbindDtoQuery pddOrderUnbindDtoQuery);

    /**
     * 查询所有未绑定用户订单统计信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderUnbindDtoQuery
     * @return null
     */
    PddOrderReportVo findUnbindUserReport(PddOrderUnbindDtoQuery pddOrderUnbindDtoQuery);

    /**
     * 删除所有未绑定用户订单列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderDeleteUnbindDto
     * @return null
     */
    Boolean deleteUnbindUserList(PddOrderDeleteUnbindDto pddOrderDeleteUnbindDto);

    /**
     * 追回返利
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddOrderIdDto
     * @return null
     */
    Boolean rebateRefound(PddOrderIdDto pddOrderIdDto);

}
